Video display method

ABSTRACT

A method for video playback uses only resources universally supported by a browser (“inline playback”) operating in virtually all handheld media devices. In one case, the method first prepares a video sequence for display by a browser by (a) dividing the video sequence into a silent video stream and an audio stream; (b) extracting from the silent video stream a number of still images, the number of still images corresponding to at least one of a desired output frame rate and a desired output resolution; and (c) combining the still images into a composite image. In one embodiment, the composite image having a number of rows, with each row being formed by the still images created from a fixed duration of the silent video stream. Another method plays the still images of the composite image as a video sequence by (a) loading the composite image to be displayed through a viewport defined the size of one of the still images; (b) selecting one of the still images of the composite image; (c) setting the viewport to display the selected still image; and (d) setting a timer for a specified time period based on a frame rate, such that, upon expiration of the specified time period: (i) selecting a next one of the still images to be displayed in the viewport, unless all still images of the composite image have been selected; and (ii) return to step (c) if not all still images have been selected.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to handheld mobile devices. In particular,the present invention relates to playing video on a handheld mobiledevice.

2. Discussion of the Related Art

Video advertising is an important vehicle for promoting a product or aservice on television, on-line devices or mobile devices. It isanticipated that video advertising will be equally important in thecoming Internet-enabled television applications. However, currenthand-held media devices (e.g., iPad, iPhone, Android devices) implementthe HTML5 specification in so many different ways as to make itdifficult for video advertising providers to provide a standard methodfor delivering video advertising. Specifically, because most hand-heldmedia devices play video only in native mode, playing a video embeddedin a web page is accomplished only by suspending the browser applicationand transferring control to a native media player. The file formatsexpected by the native media players vary among the handheld mediadevices. Therefore, it is difficult for a website owner to embed on awebpage a video clip that can be played by a large number of hand-heldmedia devices. Further, the user is required to activate a link to startthe native media player. Thus, support for video advertising in currenthandheld media devices is unsatisfactory.

SUMMARY

The present invention provides a method for video playback using onlyresources universally supported by a browser (“inline playback”)operating in virtually all handheld media devices. Such a video displaymethod is particularly valuable because it enables video playback evenon browsers with limited capabilities. Such a method is particularlybeneficial to video advertising on mobile media devices, withoutrequiring complex codecs.

According to one embodiment of the present invention, a method preparesa video sequence for display by a browser. The method includes (a)dividing the video sequence into a silent video stream and an audiostream; (b) extracting from the silent video stream a number of stillimages, the number of still images corresponding to at least one of adesired output frame rate and a desired output resolution; and (c)combining the still images into a composite image. In one embodiment,the composite image having a number of rows, with each row being formedby the still images created from a fixed duration of the silent videostream.

According to one embodiment of the present invention, the method forpreparing a video sequence for display by a browser further comprisesapplying heuristic algorithms to the composite image to facilitatesmooth video playback.

According to one embodiment of the present invention, the method forpreparing a video sequence for display by a browser further comprisescompressing the composite image, using one or more pf JPEG- andHuffman-based compression algorithms.

According to one embodiment of the present invention, a method plays acomposite image of the present invention, which includes a number ofstill images as a video sequence. The method comprises: (a) loading thecomposite image to be displayed through a viewport defined the size ofone of the still images; (b) selecting one of the still images of thecomposite image; (c) setting the viewport to display the selected stillimage; and (d) setting a timer for a specified time period based on aframe rate, such that, upon expiration of the specified time period: (i)selecting a next one of the still images to be displayed in theviewport, unless all still images of the composite image have beenselected; and (ii) return to step (c) if not all still images have beenselected.

According to one embodiment of the present invention, the method whichplays the composite image as a video sequence has the still imagesarranged in a multiple-row array. In that embodiment, each row of themultiple-raw array is formed by still images obtained from a videosequence, the number of still images in each row being related to afixed time duration.

According to one embodiment of the present invention, the method whichplays the composite image as a video sequence synchronizes setting ofthe selected still image for display with an audio stream.

According to one embodiment of the present invention, the method whichplays the composite image as a video sequence may be implemented as anadd-on to a web browser. Such an add-on may be implemented by a scriptwritten in an industry standard scripting language, such as javascript.

In one embodiment of the present invention, the video sequence is playedwhen a user of an internet-enabled device makes a selection from a webpage displayed on a graphical display. The selection may be made byclicking on an icon, such as a mute button.

The methods of the present invention allow a video advertising vendor tooffer a standard and scalable method to a website owner to display videoadvertising on any web browser, regardless of the native format adoptedby the handheld media player. Consequently, a network is created toenable running video advertising across many handheld media devices.

The present invention is better understood upon consideration of thedetailed description below and the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows a composite image formed by still images extracted fromfour seconds of a video stream, at a frame rate of 15 frames per second,in accordance with one embodiment of the present invention.

FIG. 2 shows the composite image of FIG. 1, with all component stillimages “greyed out” except for one; FIG. 2 represents specifying a stillimage to be displayed in a viewport by a playback module implementing amethod of the present invention.

FIG. 3 shows a mute button provided during the replay of video inaccordance with one embodiment of the present invention.

FIG. 4 shows flow chart 400, which summarizes steps 1-6 of a transcoderof the present invention described herein as steps 401-406.

FIG. 5 shows flow chart 500, which summarizes steps 1-6 of a playbackmodule of the present invention described herein as steps 501-506.

FIG. 6 provides exemplary system 600, in accordance with one embodimentof the present invention.

FIG. 7 shows, in one embodiment, a video sequence being played within aviewport placed at the top of a web page where a “banner” isconventionally displayed.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Although this detailed description is provided in the context of videoadvertising, the present invention is applicable to displaying any videoformat data. FIG. 6 provides exemplary system 600, in accordance withone embodiment of the present invention. As shown in FIG. 6, anadvertising or campaign manager at an advertising company uploads atypical 16×9, or a 4×3 video sequence for use in advertising on to anadvertising portal site 603. As known to those skilled in the art, avideo sequence is a group of images (frames) to be played at a specifiedframe-rate; most video sequences also include a synchronized audiostream. A video sequence that is played on a mobile hand-held mediadevice is typically played at 15 frames per second at a frame rate and a480×272 (i.e., 16×9 aspect ratio) resolution, and 192 kbps sound. Atypical video sequence used for advertising may be 10-15 seconds long.The advertising or campaign manager may provide further information,such as site targeting and other targeting parameters (e.g., the type ofwebsites to run the advertising, and how frequent it should be run).

Portal site 603 provides transcoder module 605 which re-encodes theuploaded video into a playback-friendly format (described below).Transcoder module 605 performs the following steps:

-   -   1. Dividing the video sequence into a silent video stream and an        audio stream;    -   2. Separately storing the audio stream into a separate file;    -   3. Extracting from the silent video stream a number of still        images, the number of still images to provide is determined by        the desired output frame-rate and the desired output resolution;    -   4. Combining the still images into a composite image consisting        of a number of rows, each row being formed by the still images        created from a one-second segment of the silent video stream        (FIG. 1 shows a composite image formed by still images extracted        from four seconds of a video stream, at a frame rate of 15        frames per second, in accordance with one embodiment of the        present invention)    -   5. (optional) Applying heuristic algorithms to the composite        image aimed at ensuring smooth video playback (e.g., compiling        an index of the still images in the composite image, so as to        facilitate calculating each still image's position during        playback); and    -   6. (optional) Compressing the composite image, using one or more        JPEG- or Huffman-based compression algorithms (e.g., any        suitable compression algorithm that takes advantage of the        scenic similarity that exists between successive frames).

These steps are summarized as steps 401-406 in flow chart 400 of FIG. 4.

Having thus processed, the composite image is made accessible toadvertising servers (e.g., advertising server 602), which servesadvertising content to websites (e.g., publisher sites 601) conformingto the targeting parameters. For example, when a user (e.g., client 604)requests a web page from publisher server 601, publisher server 601embeds in the requested web page, code for requesting an advertisingcompany's server (e.g., advertising server 602) for advertising content.Upon receiving the web page, client 604 sends the embedded request toadvertising server 602, which selects one or more composite images fromits collection of composite images based on the targeting parameters.Advertising server 602 then sends the selected composite images toclient 604 with specific playback instructions. In one application(“VDO”, indicating playback of video according to a method of thepresent invention), the playback instructions include frame-size (videoresolution), frame-rate, the universal resource locators (URLs) of thecomposite images, and the display-size. In the example of FIG. 6,communication between various parties take place over the interne. Insome embodiments, some communication may take place over one or moreprivate networks. Also, variations and modification of the protocols(e.g., interactions between advertising server 602 and publisher server601) discussed above are possible.

In one embodiment, transcoder 605 may detect motion in the videosequence and provide a composite image that is to be played back usingmultiple frame rates (i.e., a less frame rate for relatively stillscenes, and a higher frame rate where motion is detected. In thatembodiment, the frame rate information is provided to the playbackmodule along with the composite image.

By dividing a given video sequence into video and audio streams(synchronizing the two streams during playback on the client side) to beseparately processed, allows a playback module (described below) to besimply implemented using a scripting language, e.g. Javascript code.This simple approach reduces the overall integration time forincorporating video advertising into a web page to mere minutes, insteadof months. Using a frame-by-frame approach, the transcoding module thepresent invention therefore takes advantage of a frame-based deliveryapproach, which allows keeping related frames together to achieve highcompression.

A playback module written in a suitable script language (e.g., a scriptlanguage supported by most (if not all) browsers, such as javascriptcodes) may be provided to the user's browser. The playback moduleprocesses the composite images produced by the transcoder module. Theplayback module also manages buffering to deliver a continuous videoexperience using the component still images in the composite images. Theplayback module performs the following steps:

-   -   1. Loading the first composite image with a viewport defined by        the frame-size, such that at any given time, only a still image        worth of the composite image is displayed in the viewport;    -   2. setting the portion of the composite image to be displayed in        the viewport to the first still image of the composite image        (e.g., the upper left still image, with an index value of 0);    -   3. setting a timer to instruct the browser to call back the        playback module after a specified time, the specified time being        the time interval defined by the frame-rate;    -   4. (entry point) setting the portion of the composite image to        be displayed in the viewport, if available, to the next still        image of the composite image (e.g., the still image in the        composite image to the right of the one currently being        displayed, or the image having the next greater index);    -   5. (optional) Synchronizing the next still image, if available,        to be displayed with the audio stream; and    -   6. If the next still image is available, return to step 3 above.

These steps are summarized in FIG. 5 by flow chart 500, showing steps1-6 of the playback module described herein as steps 501-506.

These sequence of steps cause the browser to display the specified stillimages to be displayed one by one, with each successive still imagebeing displayed for the time period defined by the frame rate, thusachieving a video effect within the browser without invoking the nativeplayer on the handheld media device. In one embodiment, where the videois to be played using variable-rate playback, for each still image, thetimer is set to its corresponding frame rate, which may change fromstill image to still image.

FIG. 2 shows the composite image of FIG. 1, with all component stillimages “greyed out” except for one; FIG. 2 represents specifying a stillimage to be displayed in a viewport by a playback module implementing amethod of the present invention. Although this example shows thecomponent still images of the composite image being arranged in arectangular array in an implicit order, such an arrangement is notnecessary. For example, the component still images in the compositeimage may be arranged in any manner. In one embodiment, indexinginformation may be provided using a separate file, or throughjavascript.

The composite image may be composed from or more layers of images. Thelayers are drawn in proper order to form the final image which is shownto user as a frame. Such an approach enhances data compression andfurther reduces the total amount of image data transferred. For example,each frame may be decomposed into a portion identical to another frame(the “base frame”) and one or more component layers each representing anincremental change in scene from the base frame. Typically theincremental change in scene may be provided using much fewer bits thanthe base frame, which needed to be sent only once for the many framesthat may depend from the base frame.

The method above can also be implemented using the “Canvas” elementunder the HTML5 standard, although “Canvas” is not as supported on allmobile browsers. In that implementation, a still image to be displayedin the viewport is rendered into a bitmap (“drawn”) and copied into thecanvas using appropriate application program interface (API) calls everytime the timer expires. In some embodiments, the bitmap is a datastructure at a specified location in memory.

Optionally, the playback module can implement a mute button (FIG. 3), sothat the user may elect to play the video without the audio stream. Inone embodiment, the mute button allows the user to choose playing theoriginal video with sound in fullscreen (as supported by most devices).The mute button provides a click context that enables the playbackmodule to play the video automatically thereby ensuring a desirablebrowsing experience.

In addition, the viewport for displaying the video sequence according tothe present invention may be placed anywhere on the display of the mediaplayer. In one embodiment, as shown in FIG. 7, the video sequence can beshown within a viewport placed at the top of a web page where a “banner”is conventionally displayed.

An exemplary playback module written in javascript is provided below toillustrate the techniques described above:

<html> <head> <meta name=“viewport” content=“width=device-width;initial-scale=1.0; maximum-scale=1.0; user-scalable=0;”/> <title>iVdopiaWAP ads demo</title> <link rel=“canonical”href=“http://www.ivdopia.com”> </head> <body> <div id=‘video’style=‘background-image: url(final.0.png); background- position:0px 0px;width:320; height:180;’ ><aonclick=‘document.getElementById(“myAudio”).play( );’><imgsrc=’muteicon.png’/></a><audio id=“myAudio” src=“audio.mp3”muted=true></audio></img></div> <!-div id=‘log’></div--> <script> varframerate=12; var totalImages=16; vartotalFrames=2*totalImages*framerate; var runUpto=totalFrames; varwidth=320; var height=180; var currentFrame=0; vartotallines=Math.ceil(totalFrames/framerate); varlinesPerFile=Math.ceil(totallines/totalImages); varframesPerFile=Math.ceil(totalFrames/totalImages); var currFile=0; varvideo=document.getElementById(‘video’); varlog=document.getElementById(‘log’); var debugLog=function(str) { if(log)log.innerText+=str+“\n”; } debugLog(totallines+“ ” + linesPerFile + “” + totalFrames ); var precache=function( ) { for(i=1;i<totalImages;i++){ var image=document.createElement(‘img’); image.src=‘final.’+i+‘.png’;debugLog(image.src); } } var videoPlayback=undefined; varautoPlayVideo=function( ) { videoPlayback=setInterval(function( ) {currentFrame=currentFrame+1; if(currentFrame>=runUpto) {clearInterval(videoPlayback); videoPlayback=undefined; return; }showFrame(currentFrame); }, 1000/framerate); } varshowFrame=function(currFrame) { varcurrFile=Math.floor((currFrame−1)/framesPerFile);currX=width*((currFrame−1)%framerate);currY=height*Math.floor(((currFrame−1)/framerate)−(linesPerFile*currFile)); debugLog(currFrame+“ ” + currX+ “ ” + currY +“ ” +currFile + “ ” +linesPerFile);video.style[‘background-position’]=‘-’+currX+‘px −’+currY+‘px’;if(video.style[‘background-image’]!=‘url(final.‘+currFile+’.png)’) {video.style[‘background-image’]=‘url(final.‘+currFile+’.png)’; }currentFrame=currFrame; } precache( ); varaudio=document.getElementById(“myAudio”); autoPlayVideo( ); varsetCurrentTime=undefined; audio.addEventListener(‘timeupdate’,function() { debugLog(“CurrentTime ”+this.currentTime);/*if(setCurrentTime==undefined) { setCurrentTime=true;this.currentTime=currentFrame/framerate; }*/if(videoPlayback==undefined) { autoPlayVideo( ); }showFrame(Math.floor(this.currentTime*framerate)); }); </script> </body></html>

The present invention is applicable to all mobile or on-line websites,applications and other video content (e.g., television). The handhelddevices that can benefit from the present invention includes allpossible electronic devices capable of connecting to the internet anddisplaying advertising, such as Personal Computer, Notebook, iPad, iPod,iPhone, Android Devices, BlackBerry Devices, Television, and InternetEnabled Television.

The above detailed description is provided to illustrate specificembodiments of the present invention and is not intended to be limiting.Numerous variations and modifications within the scope of the presentinvention are possible. The present invention is set forth in theaccompanying claims.

1. A method for preparing a video sequence for display by a browser,comprising: dividing the video sequence into a silent video stream andan audio stream; extracting from the silent video stream a number ofstill images, the number of still images corresponding to at least oneof a desired output frame rate and a desired output resolution; andcombining the still images into one or more composite images.
 2. Themethod of claim 1, wherein each composite image has a number of rows,with each row being formed by the still images created from a fixedduration of the silent video stream.
 3. The method of claim 1, furthercomprising applying heuristic algorithms to the composite image tofacilitate smooth video playback.
 4. The method of claim 3, wherein oneheuristic algorithm compiles an index for the still images in eachcomposite image.
 5. The method of claim 4, whereas the index is used tocalculate each still image's position during playback.
 6. The method ofclaim 1, wherein an index of the still images in the composite imagesspecifies the order in which the still images appear in the videosequence.
 7. The method as in claim 6, wherein the index is providedseparately from the composite images.
 8. The method of claim 1, furthercomprising compressing the composite images.
 9. The method of claim 8,wherein the composite images are compressed using one or more of JPEG-and Huffman-based compression algorithms.
 10. The method of claim 1,wherein extracting still images comprises decomposing each still imageinto one or more layer of component layers.
 11. The method of claim 10,wherein decomposing each still image comprises identifying a base stillimage from a group of still images, and encoding the other still imagesin the group each as a combination of component layers representing thebase still frame and one or more incremental change from the base stillimage.
 12. The method of claim 1, further comprising separately storingthe audio stream into a separate file.
 13. The method of claim 1,wherein the number of still images in each composite image is one. 14.The method of claim 1, being carried out in an internet-enabled device.15. The method of claim 14, wherein the internet-enabled devicecomprises one of: a personal computer, a notebook computer, a tabletcomputer, an personal digital assistance, a media player, a mobiletelephone, and an internet-enabled television.
 16. A method for playinga composite image including a number of still images as a videosequence, comprising: (a) loading the composite image to be displayedthrough a viewport which dimensions are defined by the dimensions of oneof the still images; (b) selecting one of the still images of thecomposite image; (c) setting up the viewport to display the selectedstill image; and (d) setting a timer for a specified time period basedon a frame rate, such that, upon expiration of the specified timeperiod: (i) selecting a next one of the still images to be displayed inthe viewport, unless all still images of the composite image have beenselected; (ii) setting up the viewport to display the selected nextimage; and (ii) return to step (c) if not all still images have beenselected.
 17. The method of claim 16, wherein the viewport is placedwithin a banner on a web page.
 18. The method of claim 16, whereinsetting up the viewport to display a still image comprising specifyingthe position of the still image in the composite image.
 19. The methodof claim 16, wherein setting up the viewport to display a still imagecomprising drawing the still image into a designated memory location.20. The method of claim 16, wherein the still images of the compositeimage is arranged in a multiple-row array.
 21. The method of claim 20,wherein each row of the multiple-raw array comprises still imagesobtained from a video sequence, the number of still images in each rowbeing related to a fixed time duration.
 22. The method of claim 20,wherein the still images are selected in order from row to row and,within each row, along a predetermined direction.
 23. The method ofclaim 16, wherein the still images are selected according to an indexattached to the composite image.
 24. The method of claim 16, wherein thestill images are selected by specifying its position within thecomposite image.
 25. The method of claim 16, further comprisingsynchronizing the setting of the selected still image for display withan audio stream.
 26. The method of claim 16, wherein the method iscarried out by an add-on to a web browser.
 27. The method of claim 26,wherein the add-on comprises a script written in an industry standardscripting language.
 28. The method of claim 26, wherein the scriptinglanguage comprises javascript.
 29. The method of claim 26, wherein thebrowser executes on an internet-enabled device, which comprises one of:a personal computer, a notebook computer, a tablet computer, an personaldigital assistance, a media player, a mobile telephone, and aninternet-enabled television.
 30. The method of claim 29, wherein themethod is carried out when a user of the internet-enabled device makes aselection from a web page displayed on a graphical display.
 31. Themethod of claim 29, wherein the selection is made by clicking on anicon.
 32. The method of claim 31, wherein the icon comprises a mutebutton.
 33. The method of claim 16, wherein the number of still image onthe composite image is one.
 34. A server for video processing,comprising: an interface for receiving into the server a video sequencefor processing; a processor that (a) transforms the video sequence intoone of more composite images, (b) divides the video sequence into asilent video stream and an audio stream; (c) extracts from the silentvideo stream a number of still images, the number of still imagescorresponding to at least one of a desired output frame rate and adesired output resolution; and (d) combines the still images into one ormore composite images; and an interface for providing the compositeimages from the sever.
 35. The server of claim 34, wherein the videosequence comprises a video for advertising.
 36. The server of claim 35,wherein the video sequence is received from an advertising server. 37.The server of claim 35, wherein the still images of the composite imagesare to be played in one or more predetermined frame rates in a browserto provide a video experience to a user of the browser.
 38. The serverof claim 37 wherein, when a user requests a web page from a publisherserver, the publisher server causes the browser request to the compositeimages from the advertising server.
 39. The server as in claim 37,wherein each composite image has a number of rows, with each row beingformed by the still images created from a fixed duration of the silentvideo stream.
 40. The server of claim 34, wherein the processor furtherapplies heuristic algorithms to the composite image to facilitate smoothvideo playback.
 41. The server of claim 40, wherein one heuristicalgorithm compiles an index for the still images in each compositeimage.
 42. The server of claim 41, whereas the index is used tocalculate each still image's position during playback.
 43. The server ofclaim 34, wherein an index of the still images in the composite imagesspecifies the order in which the still images appear in the videosequence.
 44. The server as in claim 43, wherein the index is providedseparately from the composite images.
 45. The server of claim 34,wherein the processor further compresses the composite images.
 46. Theserver of claim 45, wherein the composite images are compressed usingone or more of JPEG- and Huffman-based compression algorithms.
 47. Theserver of claim 34, wherein extracting still images comprises theprocessor decomposing each still image into one or more layer ofcomponent layers.
 48. The server of claim 47 wherein the processoridentifies a base still image from a group of still images, and encodesthe other still images in the group each as a combination of componentlayers representing the base still frame and one or more incrementalchange from the base still image.
 49. The server of claim 34, furthercomprising separately storing the audio stream into a separate file. 50.The server of claim 34, wherein the number of still images in eachcomposite image is one.
 51. The server of claim 34, being carried out inan internet-enabled device.
 52. The server of claim 51, wherein theinternet-enabled device comprises one of: a personal computer, anotebook computer, a tablet computer, an personal digital assistance, amedia player, a mobile telephone, and an internet-enabled television.53. A media player, comprising: a graphical display; an interface to awide area network; and a processor that executes an industry standardbrowser, the browser comprising a program which (a) receives over theinterface one or more composite images each including one or more stillimages; (b) loads the composite image to be displayed through a viewporton the graphical display which dimensions are defined by the dimensionsof one of the still images; (c) selects one of the still images of thecomposite image; (d) sets up the viewport to display the selected stillimage; and (e) sets a timer for a specified time period based on a framerate, such that, upon expiration of the specified time period: theprocessor (i) selects a next one of the still images to be displayed inthe viewport, unless all still images of the composite image have beenselected; (ii) sets up the viewport to display the selected next image;and (ii) returns to (d) if not all still images have been selected. 54.The media player of claim 53, wherein the viewport is placed within abanner on a web page.
 55. The media player of claim 53, wherein theviewport is set up to display a still image by specifying the positionof the still image in the composite image.
 56. The media player of claim53, wherein the viewport is set up to display a still image by drawingthe still image into a designated memory location.
 57. The media playerof claim 53, wherein the still images of each composite image isarranged in a multiple-row array.
 58. The media player of claim 57,wherein each row of the multiple-raw array comprises still imagesobtained from a video sequence, the number of still images in each rowbeing related to a fixed time duration.
 59. The media player of claim 57wherein the still images are selected in order from row to row and,within each row, along a predetermined direction.
 60. The media playerof claim 53, wherein the still images are selected according to an indexattached to the composite image.
 61. The media player of claim 53wherein the still images are selected by specifying its position withinthe composite image.
 62. The media player of claim 53, furthercomprising synchronizing the setting of the selected still image fordisplay with an audio stream.
 63. The media player of claim 53, whereininstructions by which the processor carries out (a) to (e) are providedin an add-on to a web browser.
 64. The media player of claim 63, whereinthe add-on comprises a script written in an industry standard scriptinglanguage.
 65. The media player of claim 64, wherein the scriptinglanguage comprises javascript.
 66. The media player of claim 53, whereinthe processor carries out (a) to (e) when a user of the media playermakes a selection from a web page displayed on a graphical display. 67.The media player of claim 65, wherein the selection is made by clickingon an icon.
 68. The media player of claim 67, wherein the icon comprisesa mute button.
 69. The media player of claim 53, wherein the number ofstill image on the composite image is one.